package de.karlNet.condition.conditions.equal;

import de.karlNet.condition.conditions.Condition;

public class NotEqualOr<T> extends Condition<T> {

	public NotEqualOr(T[] actualValues, T[] valuesToBeExpected) {
		super(actualValues, valuesToBeExpected);
	}

	public NotEqualOr(T... actualValues) {
		super(actualValues);
	}

	public boolean meets() {
		super.meets();
		for (int i = 0; i < actualValues.length; i++) {
			if (!actualValues[i].equals(valuesToBeExpected[i])) {
				return true;
			}
		}
		return false;
	}

	public static <T> NotEqualOr<T> notEqualOr(T... actualValues) {
		return new NotEqualOr<T>(actualValues);
	}
}
